📕 iOS 14

[SwiftUI] Line Height 설정하기

SwiftUI로 개발하다 보면 불편한 점.. Text의 Line Height를 바로 설정할 수 없다는 점이다. 커스텀 된 디자인에서는 분명 디자이너가 글자의 높이까지 고려해서 디자인을 했을 텐데, 종종 그냥 넘어간 경우도 있었다. (하하 비밀..) 하지만 위젯 개발을 하면서 폰트의 높이가 중요하게 작용하고 있어서, SwiftUI로 Font 높이 설정하는 방법을 찾아봤다. 오늘의 결론.struct ContentView: View { private let height = UIFont(name: "SpoqaHanSansNeo-Bold", size: 40)?.lineHeight ?? 50 var body: some View { VStack { Text("Hell..

📕 iOS/SwiftUI 2025.02.06

iOS 프로젝트에서 Custom Font 사용하기

SwiftUI에서 Line Height 적용하는 방법 글을 작성하다가, iOS에서 원하는 폰트를 사용하는 방법에 대해 분명 써놓은 글이 있었던 것 같았는데 없길래 짧게 기록해본다! 어렵지 않으니 차근차근 시작! 1. 프로젝트 폴더 내에 원하는 폰트 파일을 추가한다.특정 폴더 내에 넣어도 상관없고, 원하는 곳에 추가하면 된다.추가할 때 타겟을 꼭 잘 보고 체크하기만 하면 되는데, 보통 자동으로 체크되어 있다.  2. Info.plist에 폰트 이름을 추가한다.Info.plist에 Key는 Fonts provided by application, Value로 폰트 이름을 확장자까지 포함해서 넣어준다.!! 확장자를 포함하는것을 놓치지 말고 적어주자 !!  2-1. 정확한 폰트명 찾기.혹시 이후에 폰트가 적용이 ..

📕 iOS 2025.02.05

[iOS] 라이브러리 관리 도구와 사용법 (CocoaPods/Carthage/Swift Package Manager)

안녕하세요! 오늘은 iOS 개발을 위한 라이브러리 관리 도구를 이야기하려고 합니다.(오랜만에 글을 썼더니 평소와 다르게 존댓말로 작성했네요..?ㅎㅎ) 저는 Xcode를 이용해 개발하면서 외부 라이브러리를 사용할 때, 주로 SPM을 이용합니다.가장 간편하고 관리가 쉽다고 느껴져 SPM을 사용하지만,라이브러리 관리 도구에는 다양한 종류가 있습니다! 오늘은 CocoaPods, Carthage, Swift Package Manager에 대해 알아봅시다.라이브러리 관리 도구각각을 알아보기 전에 먼저 라이브러리 관리 도구가 무엇인지 알아봅시다. 많은 사람들이 라이브러리 관리 도구를 의존성 관리 도구라고 부르는 경우가 있습니다.이 도구들이 프로젝트에서 사용하고자 하는 외부 코드(라이브러리)의 의존성을 관리해 주기 때..

📕 iOS 2024.10.08

[SwiftUI] storyboard로 Launch Screen 구현

[SwiftUI] Info.plist로 Launch Screen 구현Launch Screen Launch Screen은 앱이 시작되기 전 보이는 짧은 화면으로 Android에서는 Splash라고 부르고, iOS에서는 Launch Screen이라고 부른다. UIKit 에서는 LaunchScreen storyboard로 비교적 쉽게 구현할 수 있다.mohagunolziii.tistory.com1년 넘는 시간 전에 썼던 이 글이 내 블로그 방문 경로의 25% 정도를 차지한다.꽤나 많은 사람들이 찾아주고 있고, 최근에는 아카데미 러너들이 이 글을 잘 봤다면서 이야기를 해주었는데.. 사실 나는 더 이상 이 방법을 사용하지 않아서 머쓱해했다. 😅 너무 방치해 둔 블로그 같아서 민망하면서도, 새로 내가 사용하는 방..

📕 iOS/SwiftUI 2024.06.23

[소소한 UIKit] UILabel에서 여러 줄 입력하기

너무 오랜만에 UIKit을 공부하다가, UILabel에서 여러 줄의 텍스트를 입력해야하는데 아무리 \n, 엔터, cmd 엔터를 해도 줄바꿈이 되지 않았다.. 뭐였지 뭐였지 하다가 찾은 방법 ctrl + enter !! 그리고 Lines를 내 상황에 맞게 입력해준다! 만약 text가 계속 길어지고 화면에 따라 lines가 바뀐다면 0으로 입력하면 된다. 이상 처음으로 써보는 소소한 UIKit(간단한 내용이라는 뜻)이었다! ㅎㅎ

📕 iOS/UIKit 2023.11.06

[SwiftUI] custom view modifier 만들기

Text나 Image 등에 같은 modifier를 계속 반복해서 쓰다보면, 아 이거 그냥 한번에 쓸 수 없나? 이런 생각을 하게 되는데!! Apple SwiftUI 문서에 이미 친절하게 알려주고 있었다! 푸하하 이걸 이제 봤다니!! ViewModifier | Apple Developer Documentation A modifier that you apply to a view or another view modifier, producing a different version of the original value. developer.apple.com 먼저 ViewModifier가 뭘까? 너무도 당연히 .(dot) 과 함께 사용하고 있는 이 modifier는 view을 원래의 값과 다르게 만들고 싶을 때 v..

📕 iOS/SwiftUI 2023.08.31

[iOS App Dev Tutorials - UIKit] Ch.1 UIKit essentials

UIKit 프로젝트를 시작했는데, 여전히 익숙하지 않은 것 같아서 애플의 튜토리얼을 해보려고 한다! 저번 프로젝트에서 느낀건데, 나중에 기록해야지! 하면 안하게 된다.. 바로바로 하면서 기록해야지! Chapter 1. UIKit essentials Develop apps for iOS | Apple Developer Documentation Learn the basics of Xcode, SwiftUI, and UIKit to create compelling iOS apps. developer.apple.com Getting started with Today UIKit overview UIKit은 Apple 플랫폼의 앱을 만들기 위한 graphical framework이다. Extensive API co..

📕 iOS/UIKit 2023.07.05

[Day 3] operators and conditions

Joseph Campbell once said, “computers are like Old Testament gods: lots of rules and no mercy.” 1.  Arithmetic Operators 산술 연산자 +, -, *, /, %(나머지). Swift는 #의 배수인지 아닌지 더 쉽게 접근할 수 있다. let number = 465 let isMultiple = number.isMultiple(of: 7) 2. Operator overloading Swift는 다른 타입에 대해서도 + 연산을 제공한다. let fakers = "Fakers gonna " let action = fakers + "fake" let firstHalf = ["John", "Paul"] let secon..

[SwiftUI] Info.plist로 Launch Screen 구현

1년 전에 썼던 이 글을 최근 주변 분들이 잘 봤다면서 이야기해 주셔서 감사했다.하지만 나는 이제 다른 방법으로 Launch Screen을 구현하고 있어서..머쓱해하면서 이야기했는데, 그 방법을 다시 글로 남겨보았다!storyboard로 구현하는 방법이고 아래 링크를 남겨두겠다.그러나 각자 편한 방법 대로 구현하면 될 것 같다! [SwiftUI] storyboard로 Launch Screen 구현[SwiftUI] Info.plist로 Launch Screen 구현Launch Screen Launch Screen은 앱이 시작되기 전 보이는 짧은 화면으로 Android에서는 Splash라고 부르고, iOS에서는 Launch Screen이라고 부른다. UIKit 에서는 LaunchScreen storyboar..

📕 iOS/SwiftUI 2023.05.04